Unityでprotobufを使う


概要

2018年ともなると選択肢増えていた。



避けたいこと

attrでの生成

なぜ変更可能性をわざわざ下げねばならないのか。IDLあるんだからそっちを主にしようよ。



やりたいこと

.proto ファイルからのコード生成


ドンピシャなのがこれ。

https://github.com/5argon/protobuf-unity



やらないといけないこと

iOS向けに、事前に生成されたcsコードをdllにしておく必要がある。



protobufのインストール

macだとhomebrewが楽。

brew install protobuf


で、入れ終わったら

/usr/local/bin/protoc

で出て来るパスをUnity > Preferences > Protobuf に指定する。


この時入っているverは3.5.1。



Unity側のprotobuf.dllの更新

含まれているdllが古いため、protobuf本家のリポジトリ https://github.com/google/protobuf からcsharp用のdllを生成する。

protobuf 3.5.1のdotnet fw 4.5あたりでのdllが落ちてると嬉しいんだけど。



と言うわけでなんとかなるようにしたのがこちらのリポジトリ(fork)

https://github.com/sassembla/protobuf-unity